home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The X-Philes (2nd Revision)
/
The X-Philes Number 1 (1995).iso
/
xphiles
/
hp48hor1
/
planets.src
< prev
next >
Wrap
Text File
|
1991-10-19
|
5KB
|
279 lines
%%HP: T(3)A(D)F(.);
@ PLANETS by Tim Strong
DIR
PLANETS
\<< RCLF 'FLG'
STO { { "Merc"
\<< 1 CONT
\>> } { "Venu"
\<< 2 CONT
\>> } { "Mars"
\<< 4 CONT
\>> } { "Jupit"
\<< 5 CONT
\>> } { "Satu"
\<< 6 CONT
\>> } { "Uran"
\<< 7 CONT
\>> } { "Nept"
\<< 8 CONT
\>> } { "Plut"
\<< 9 CONT
\>> } } TMENU
"Enter date: M DD YYYY
Select Planet"
PROMPT DUP 'PLDATA'
SWAP GET OBJ\-> DROP
'PLDATA' 3 GET OBJ\->
6 DROPN \-> n Tp \Gel \Gw
ec a ic \GW \Gho Vo Te
\Gele \Gwe ece
\<< 4 FIX \GDd90
360 365.242191 / *
DUP Tp / NRMANG
'Np' STO Te /
NRMANG 'Ne' STO Np
\Gel + \Gw - 'Mp' STO
Np 360 \pi / \->NUM ec
* Mp SIN * + \Gel +
NRMANG 'l' STO l \Gw
- 'vp' STO a 1 ec
SQ - * 1 ec vp COS
* + / 'r' STO Ne
\Gele + \Gwe - 'Me' STO
Ne 360 \pi / \->NUM ece
* Me SIN * + \Gele +
NRMANG 'L' STO L \Gwe
- 've' STO 1 ece SQ
- 1 ece ve COS * +
/ 'R' STO l \GW - DUP
SIN ic SIN * ASIN
'\165' STO DUP SIN ic
COS * 'y' STO COS
'x' STO
IF 'n<3'
THEN x y
R\->C ARG \GW + 'l' STO
r \165 COS * 'r' STO r
L l - SIN * R r L l
- COS * - / ATAN
'Ap' STO 180 L Ap +
+ NRMANG '\Gl' STO r
\165 TAN \Gl l - SIN * *
R l L - SIN * /
ATAN '\Gb' STO
ELSE R l L
- SIN * r R l L -
COS * - / ATAN l +
NRMANG '\Gl' STO r \165
TAN \Gl l - SIN * * R
l L - SIN * / ATAN
'\Gb' STO
END \Gl \Gb 6
CONCO SWAP 15 /
IF DUP 0 <
THEN 24 +
END SWAP
\->DMS '\Gd' STO '\Ga'
STO R SQ r SQ + 2 R
* r * l L - COS * -
\v/ '\Gr' STO \Gho \Gr /
'\Gh' STO \Gl l - COS 1
+ 2 / 'F' STO
.138612439306 \Gr *
\->HMS '\Gt' STO 5 r \Gr
* F \v/ / LOG * Vo +
'm' STO "\Ga= " \Ga
\->STR + "
\Gd= " \Gd
\->STR + + "
\Gr= " \Gr
\->STR + + "
\Gt= " \Gt
\->STR + + " " {
"Mercury" "Venus"
"" "Mars" "Jupiter"
"Saturn" "Uranus"
"Neptune" "Pluto" }
n GET + + "
\Gh= " \Gh
\->STR + + "
F= " F
\->STR + + "
m= " m
\->STR + + CLLCD 1
DISP 3 FREEZE FLG
STOF { m \Gt F \Gh \Gr \Ga
\Gd \Gb \Gl Ap x y \165 R ve
L Np FLG Me r vp l
Mp Ne } PURGE
\>>
\>>
CONCO
\<<
IF DEPTH 3 <
THEN { {
"AaH\Gd"
\<< 1 CONT
\>> } {
"H\GdAa"
\<< 2 CONT
\>> } {
"\Ga\GdH\Gd"
\<< 3 CONT
\>> } {
"H\Gd\Ga\Gd"
\<< 4 CONT
\>> } {
"\Ga\Gd\Gl\Gb"
\<< 5 CONT
\>> } {
"\Gl\Gb\Ga\Gd"
\<< 6 CONT
\>> } {
"\Ga\Gdlb"
\<< 7 CONT
\>> } {
"lb\Ga\Gd"
\<< 8 CONT
\>> } } TMENU
CLLCD
"Select Conversion:"
PROMPT
END \-> \Gm v n
\<< { A B C D }
n 2 / .5 + FLOOR
GET EVAL
IF n 8 == n
6 == OR
THEN TRN
END \Gm COS v
COS * \Gm SIN v COS *
v SIN \->V3 * V\-> ASIN
3 ROLLD R\->C ARG
SWAP 0 MENU
\>>
\>>
DMS\->
\<< HMS\-> SWAP
HMS\-> SWAP
\>>
\->DMS
\<< \->HMS "DMS"
\->TAG SWAP \->HMS
"DMS" \->TAG SWAP
\>>
JULDAY
\<< \-> m d y
\<< y 10000 * m
100 * d + +
15821015 \>=
IF 'm\<=2'
THEN y 1 -
'y' STO m 12 + 'm'
STO
END
IF
THEN y 100
/ IP DUP 4 / IP
SWAP NEG 2 + +
ELSE 0
END 365.25
y *
IF 'y<0'
THEN .75 -
END IP
30.6001 m 1 + * IP
+ + d + 1720994.5 +
\>>
\>>
\GDd90
\<< JULDAY
2447891.5 -
\>>
EPOCH 2000
A
\<< \O/ SIN NEG 0 \O/
COS 0 -1 0 \O/ COS 0
\O/ SIN { 3 3 } \->ARRY
\>>
B
\<< LST COS LST
SIN 0 LST SIN LST
COS NEG 0 0 0 1 { 3
3 } \->ARRY
\>>
C
\<< 1 0 0 0 \Ge COS
\Ge SIN 0 \Ge SIN NEG \Ge
COS { 3 3 } \->ARRY
\>>
D
[[ -.0669887 -.8727558 -.4835389 ]
[ .4927285 -.450347 .7445846 ]
[ -.8676008 -.1883746 .4601998 ]]
\Ge
\<< 1 0 EPOCH
JULDAY 2451545 -
36525 / \-> T '(
46.815*T+.0006*T^2-
.00181*T^3)/3600'
NEG 23.439292 +
\>>
\O/ 47.0194444444
CST { PLANETS
CONCO DMS\-> \->DMS
JULDAY \GDd90 EPOCH \O/
\Ge }
NRMANG
\<< DUP 360 / IP
360 * -
IF DUP 0 <
THEN 360 +
END
\>>
PLDATA { {
.240852 60.750646
77.299833 .205633
.387099 7.00454
48.21274 6.74 -.42
} { .615211
88.455855
131.430236 .006778
.723332 3.394535
76.58982 16.92 -4.4
} { 1.00004
99.403308
102.768413 .016713
1 0 0 0 0 } {
1.880932 240.739474
335.874939 .093396
1.523688 1.849736
49.480308 9.36
-1.52 } { 11.863075
90.638185 14.170747
.048482 5.202561
1.303613 100.353142
196.74 -9.4 } {
29.471362
287.690033
92.861407 .055581
9.554747 2.48898
113.576139 165.6
-8.88 } { 84.039492
271.063148
172.884833 .046321
19.21814 .733059
73.926961 65.8
-7.19 } { 164.79246
282.349556
48.009758 .009003
30.10957 1.770646
131.670599 62.2
-6.87 } { 246.77027
221.4127 224.133
.24624 39.3414
17.142 110.144 8.2
-1 } }
END